package com.fingard.avatar.website.service;

import com.fingard.avatar.website.model.bean.LoginResp;
import com.fingard.avatar.website.model.po.SysUserPo;

/**
 * @author 徐一涛
 * @date 2022/4/26
 */
public interface UserAuthService {

    /**
     * 通过token获取用户
     * @param token  token
     * @return 用户
     */
    SysUserPo getUser(String token);

    /**
     * 设置用户
     * @param token  token
     * @param user  用户信息
     */
    void setUser(String token, SysUserPo user);

    /**
     * 设置用户
     * @param userName  登录名
     * @param password  密码
     * @return 用户
     */
    LoginResp login(String userName, String password);

    /**
     * 设鉴权
     * @param params  登录名
     * @return 用户
     */
    boolean checkPermission(Object... params);

    /**
     * 通过token获取用户
     * @param userName  token
     * @return 用户
     */
    SysUserPo getUserBySso(String userName);
}
